package com.lastproject.ejb.dao;

import java.util.Date;
import java.util.List;
import java.util.Set;

import javax.ejb.Remote;

import com.lastproject.dto.ReportDTO;
import com.lastproject.dto.ReportResultDTO;
import com.lastproject.dto.UserDTO;

@Remote
public interface ReportDAORemote {
	
	public void create(ReportDTO reportDTO);
	
	public void edit(ReportDTO reportDTO);
	
	public void remove(ReportDTO reportDTO);
	
	public ReportDTO findById(int id);
	
	public List<ReportDTO> getAll();

	List<ReportResultDTO> getReportResults(ReportDTO reportDTO);

	List<ReportDTO> getGeneralReportsForUser(UserDTO userDTO);

	List<ReportDTO> getAllReportsForUser(UserDTO userDTO);

	List<String> getAllPositions();

	ReportDTO findByNameDateEmployee(String name, Date date, int id);

}
